package com.yycx.module.bus.client.entity.hy;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.*;

import java.util.Date;

import com.yycx.common.mybatis.base.entity.AbstractEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.yycx.common.mybatis.annotation.TableAlias;

/**
 * 政策详情
 *
 * @author flyme
 * @date 2023-07-18
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("bus_policy_saleman")
@TableAlias("bps")
@ApiModel(value = "BusPolicySaleman对象", description = "政策详情")
public class BusPolicySaleman extends AbstractEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    @TableId(value = "policySaleManId", type = IdType.ASSIGN_ID)
    private Long policySaleManId;

    @ApiModelProperty(value = "药品配置ID")
    private Long policyDrugId;

    @ApiModelProperty(value = "部门ID")
    private Long deptId;

    @ApiModelProperty(value = "业务员ID")
    private Long saleManId;

    @ApiModelProperty(value = "指定商务负责人")
    private Long saleManIdE;

    @ApiModelProperty(value = "账套ID")
    private Long companyId;

    @ApiModelProperty(value = "结算价")
    private BigDecimal saleManPrice;

    @ApiModelProperty(value = "加价上限")
    private BigDecimal makeUpPrice;

    @ApiModelProperty(value = "结算费率")
    private BigDecimal saleManRate;

    @ApiModelProperty(value = "提成金额")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private BigDecimal rebateAmount;

    @ApiModelProperty(value = "结算规则")
    private Integer settleRule;

    @ApiModelProperty(value = "包票")
    private Integer baopiao;


    @ApiModelProperty(value = "结算价取值方式")
    private Integer priceType;

    @ApiModelProperty(value = "结算方式 1：按结算价 2:按盒结算")
    private Integer settleAmountType;


    @ApiModelProperty(value = "结算公式内容")
    private String saleManSettleFormula;


    @ApiModelProperty(value = "提成公式内容")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String rebateSettleFormula;

    @ApiModelProperty(value = "部门利润公式")
    private String deptProfitAmountFormula;

    @ApiModelProperty(value = "开始日期")
    private Date beginDate;

    @ApiModelProperty(value = "结束日期")
    private Date endDate;

    @ApiModelProperty(value = "是否有税率差")
    private Integer hasTaxRateDiff;


    @ApiModelProperty(value = "备注")
    private String remark;

}
